package com.dark.util;

import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;

import java.util.Collections;

/**
 * ClassName: MybatisPlusGeneratorMain
 * Description:MybatisPlusGeneratorMain
 *
 * @author chengluchao
 * @link https://baomidou.com/pages/779a6e/#%E5%BF%AB%E9%80%9F%E5%85%A5%E9%97%A8
 * @date: 2022/1/12 16:03
 * @since 1.3.10
 */
public class MybatisPlusGeneratorMain {
    public static void main(String[] args) {
        FastAutoGenerator.create(
                "jdbc:mysql://127.0.0.1:3306/jingjing-cloud",
                "root",
                "11111111")
                .globalConfig(builder -> {
                    builder.author("chengluchao") // 设置作者
//                            .enableSwagger() // 开启 swagger 模式
                            .outputDir("/Users/mp"); // 指定输出目录
                })
                .packageConfig(builder -> builder
                        .parent("com.jingjing.cloud")
                        .entity("model.po")
                        .service("service")//暂时不用这一层
                        .serviceImpl("service.impl")//暂时不用这一层
                        .controller("controller")//暂时不用这一层
                        .mapper("dao.mapper")
                        .other("other")
                        .xml("dao.xml")
                        .pathInfo(Collections.singletonMap(OutputFile.xml, "/Users/mp")))
                .strategyConfig(builder -> {
                    builder.addInclude("j_cache"); // 设置过滤表前缀
                })
                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板，默认的是Velocity引擎模板
                .execute();
    }
}